Viterbi detection is a generally optimal detection scheme for a partial response sequence. For a given partial response channel and a sampled channel-output sequence, the Viterbi detector can decide an input sequence to the partial response channel, which corresponds to an output sequence that is the closest to the sampled channel output sequence in the sense of Euclidean distance, or equivalently, the most likely input sequence. Traditional Viterbi detectors minimize the Euclidean distance between the sampled sequence and the predicted sequence (the sequence determined by the Viterbi detector), thereby minimizing the probability of an incorrect sequence being predicted. Typically, an equalizer is used to reshape the response of a communication channel into a pre-known target partial response. A Viterbi detector can then be designed based on this target response.
Such Viterbi detectors are commonly used in signal processing circuits, which can be used to read a storage medium and process a discrete-time sampled waveform to obtain binary data stored on the medium. In magnetic-medium-based storage devices, a read-write head may fly on a cushion of air over a magnetic disk surface. The read-write head retrieves and records data on the magnetic layer of a rotating disk. When retrieving data, magnetic field variations are converted into an analog electrical signal, the analog signal is typically amplified, sampled, converted to a digital signal and interpreted. Moreover, tracking of stored data during a read operation is frequently performed using feedback or decision aided gain and timing control.